<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <title>Constrain Draggable - jQuery EasyUI Demo</title>
    <link rel="stylesheet" type="text/css" href="../../themes/default/easyui.css">
    <link rel="stylesheet" type="text/css" href="../../themes/icon.css">
    <link rel="stylesheet" type="text/css" href="../demo.css">
    <script type="text/javascript" src="../../jquery.min.js"></script>
    <script type="text/javascript" src="../../jquery.easyui.min.js"></script>
</head>
<body>
<h2>Constrain Draggable</h2>
<div class="demo-info">
    <div class="demo-tip icon-tip"></div>
    <div>The draggable object can only be moved within its parent container.</div>
</div>
<div style="margin:10px 0;"></div>
<div style="position:relative;overflow:hidden;border:1px solid #ccc;width:500px;height:300px">
    <div class="easyui-draggable" data-options="onDrag:onDrag"
         style="width:100px;height:100px;background:#fafafa;border:1px solid #ccc;">
    </div>
</div>
<script>
    function onDrag(e) {
        var d = e.data;
        if (d.left < 0) {
            d.left = 0
        }
        if (d.top < 0) {
            d.top = 0
        }
        if (d.left + $(d.target).outerWidth() > $(d.parent).width()) {
            d.left = $(d.parent).width() - $(d.target).outerWidth();
        }
        if (d.top + $(d.target).outerHeight() > $(d.parent).height()) {
            d.top = $(d.parent).height() - $(d.target).outerHeight();
        }
    }
</script>

</body>
</html>